<html>
<head><meta charset="utf-8"><title>finding perf spikes · t-compiler/wg-polonius · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/index.html">t-compiler/wg-polonius</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html">finding perf spikes</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="158927642"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158927642" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158927642">(Feb 19 2019 at 22:58)</a>:</h4>
<p>So <span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> if you remember we were testing NLL perf on <a href="http://perf.rust-lang.org" target="_blank" title="http://perf.rust-lang.org">perf.rust-lang.org</a> using some kind of NLL comparison mode before. Maybe we can touch base with <span class="user-mention" data-user-id="116122">@simulacrum</span> to see how hard it would be to extend the perf runner to test vs polonius, and then run such tests locally and look for big slowdowns.</p>



<a name="158927644"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158927644" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158927644">(Feb 19 2019 at 22:58)</a>:</h4>
<p>I imagine it's not so hard</p>



<a name="158927666"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158927666" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158927666">(Feb 19 2019 at 22:59)</a>:</h4>
<p>ok</p>



<a name="158927674"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158927674" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158927674">(Feb 19 2019 at 22:59)</a>:</h4>
<p>will ping <span class="user-mention" data-user-id="116122">@simulacrum</span></p>



<a name="158928170"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158928170" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158928170">(Feb 19 2019 at 23:05)</a>:</h4>
<p>not very hard, and if it's for local testing, the NLL flags are set <a href="https://github.com/rust-lang-nursery/rustc-perf/blob/master/collector/src/bin/rustc-perf-collector/execute.rs#L229-L232" target="_blank" title="https://github.com/rust-lang-nursery/rustc-perf/blob/master/collector/src/bin/rustc-perf-collector/execute.rs#L229-L232">here</a></p>



<a name="158928424"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158928424" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158928424">(Feb 19 2019 at 23:08)</a>:</h4>
<p>they monitor Zulip so i imagine they'll show up sooner or later =)</p>



<a name="158929395"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158929395" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158929395">(Feb 19 2019 at 23:21)</a>:</h4>
<p>what needs to be run locally?</p>



<a name="158929417"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158929417" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158929417">(Feb 19 2019 at 23:21)</a>:</h4>
<p>I mean, just passing -Zpolonius there is enough?</p>



<a name="158929469"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158929469" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158929469">(Feb 19 2019 at 23:22)</a>:</h4>
<p>unsure how the perf compares things there</p>



<a name="158929479"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158929479" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158929479">(Feb 19 2019 at 23:22)</a>:</h4>
<p>unsure if there's two runs one with some flags and the other without flags</p>



<a name="158929865"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158929865" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158929865">(Feb 19 2019 at 23:28)</a>:</h4>
<p>there are many modes and dimensions, but the collector collects timings for say a specific rustc commit</p>



<a name="158929898"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158929898" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158929898">(Feb 19 2019 at 23:29)</a>:</h4>
<p>and the comparisons are made between 2 of these</p>



<a name="158929930"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158929930" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158929930">(Feb 19 2019 at 23:30)</a>:</h4>
<p>in your case it might be interesting to look at the "local benchmarking" or "local profiling" sections of <a href="https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector" target="_blank" title="https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector">the collector readme</a></p>



<a name="158930021"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930021" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930021">(Feb 19 2019 at 23:31)</a>:</h4>
<p>(eg maybe manually comparing results of 2 local runs, instead of using the site, one with NLL and one with Polonius, if that's what you want to compare)</p>



<a name="158930360"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930360" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930360">(Feb 19 2019 at 23:36)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> We'll want to answer a couple of questions:<br>
 - Do we want to test both vs. NLL and vs. Polonius?<br>
 - How bad/good is polonius compared to NLL? We can probably afford 10-20% but if it's much beyond that we'll want to delay enabling it for all things for a while</p>



<a name="158930378"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930378" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930378">(Feb 19 2019 at 23:36)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> I am imagining that we start with local runs</p>



<a name="158930380"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930380" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930380">(Feb 19 2019 at 23:36)</a>:</h4>
<p>not automatic runs</p>



<a name="158930392"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930392" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930392">(Feb 19 2019 at 23:37)</a>:</h4>
<p>basically I wanted to try and answer this question:</p>



<a name="158930399"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930399" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930399">(Feb 19 2019 at 23:37)</a>:</h4>
<blockquote>
<ul>
<li>How bad/good is polonius compared to NLL?</li>
</ul>
</blockquote>



<a name="158930410"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930410" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930410">(Feb 19 2019 at 23:37)</a>:</h4>
<p>I'm pretty sure the answer is "sometimes quite bad"</p>



<a name="158930418"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930418" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930418">(Feb 19 2019 at 23:37)</a>:</h4>
<p>but I don't really know the reasons why or when</p>



<a name="158930472"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930472" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930472">(Feb 19 2019 at 23:38)</a>:</h4>
<p>hm, okay, so that should be fairly easy I think</p>



<a name="158930500"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930500" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930500">(Feb 19 2019 at 23:38)</a>:</h4>
<p>I would go with a manual edit for the time being -- here <a href="https://github.com/rust-lang-nursery/rustc-perf/blob/master/collector/src/bin/rustc-perf-collector/execute.rs#L231" target="_blank" title="https://github.com/rust-lang-nursery/rustc-perf/blob/master/collector/src/bin/rustc-perf-collector/execute.rs#L231">https://github.com/rust-lang-nursery/rustc-perf/blob/master/collector/src/bin/rustc-perf-collector/execute.rs#L231</a> -- as <span class="user-mention" data-user-id="116113">@lqd</span> mentioned -- and just run the collector with and without that patch</p>



<a name="158930513"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930513" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930513">(Feb 19 2019 at 23:39)</a>:</h4>
<p>We could also collect some stats with a compiler PR + bors try if we were so inclined</p>



<a name="158930701"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930701" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930701">(Feb 19 2019 at 23:42)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> If it'd be helpful I can probably put a hack into perf manually to make some random (non important) commit get benchmarked where NLL is the "default" and polonius is the "nll" shown in the UI</p>



<a name="158930707"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930707" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930707">(Feb 19 2019 at 23:42)</a>:</h4>
<p>in some sense that's the reality because 2018 means NLL is universally on</p>



<a name="158930717"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158930717" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158930717">(Feb 19 2019 at 23:43)</a>:</h4>
<p>(well, for new code, anyway)</p>



<a name="158931238"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158931238" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158931238">(Feb 19 2019 at 23:51)</a>:</h4>
<p>let's start with manual editing -- <span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> do you see the code that <span class="user-mention" data-user-id="116122">@simulacrum</span> cited above?</p>



<a name="158931406"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158931406" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158931406">(Feb 19 2019 at 23:54)</a>:</h4>
<p>will check all this tomorrow morning</p>



<a name="158944610"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158944610" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158944610">(Feb 20 2019 at 04:13)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> saw the code yeah, as <span class="user-mention" data-user-id="116113">@lqd</span> also pointed out</p>



<a name="158944668"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158944668" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158944668">(Feb 20 2019 at 04:14)</a>:</h4>
<p>don't remember if -Zpolonius goes also with -Zborrowck=mir and all that</p>



<a name="158944670"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158944670" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158944670">(Feb 20 2019 at 04:14)</a>:</h4>
<p>and yeah, I can test it locally and print here the results</p>



<a name="158944738"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158944738" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158944738">(Feb 20 2019 at 04:16)</a>:</h4>
<p>Ok, I guess the way to go is said here <a href="https://github.com/spastorino/rust/blob/06ec1a422a5ff147c3a09af7eb80db77459e797b/src/tools/compiletest/src/runtest.rs#L1807" target="_blank" title="https://github.com/spastorino/rust/blob/06ec1a422a5ff147c3a09af7eb80db77459e797b/src/tools/compiletest/src/runtest.rs#L1807">https://github.com/spastorino/rust/blob/06ec1a422a5ff147c3a09af7eb80db77459e797b/src/tools/compiletest/src/runtest.rs#L1807</a></p>



<a name="158946160"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946160" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946160">(Feb 20 2019 at 04:52)</a>:</h4>
<p>getting a lot of ...</p>



<a name="158946163"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946163" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946163">(Feb 20 2019 at 04:52)</a>:</h4>
<div class="codehilite"><pre><span></span> stdout=
[2019-02-20T04:48:00Z INFO  collector] 12 benchmarks left
[2019-02-20T04:48:00Z INFO  collector::execute] Running script-servo: Check + [Clean, Nll, BaseIncr, CleanIncr, PatchedIncrs]
[2019-02-20T04:48:00Z INFO  collector] failed to benchmark script-servo, recorded: expected success, got exit code: 101

stderr=error: An unknown error occurred

To learn more, run the command again with --verbose.
</pre></div>



<a name="158946171"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946171" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946171">(Feb 20 2019 at 04:52)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> ^^^</p>



<a name="158946197"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946197" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946197">(Feb 20 2019 at 04:53)</a>:</h4>
<p>I am hesitant but feel like it's plausible that's the fault of the compiler, not us?</p>



<a name="158946198"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946198" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946198">(Feb 20 2019 at 04:53)</a>:</h4>
<p>(us = perf)</p>



<a name="158946209"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946209" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946209">(Feb 20 2019 at 04:53)</a>:</h4>
<p>You might get more/better logs if you do <code>RUST_LOG=collector=trace</code></p>



<a name="158946214"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946214" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946214">(Feb 20 2019 at 04:53)</a>:</h4>
<p><span aria-label="+1" class="emoji emoji-1f44d" role="img" title="+1">:+1:</span></p>



<a name="158946294"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946294" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946294">(Feb 20 2019 at 04:55)</a>:</h4>
<div class="codehilite"><pre><span></span> stdout=
[2019-02-20T04:52:59Z INFO  collector] 12 benchmarks left
[2019-02-20T04:52:59Z INFO  collector::execute] Running script-servo: Check + [Clean, Nll, BaseIncr, CleanIncr, PatchedIncrs]
[2019-02-20T04:52:59Z TRACE collector::execute] running: &quot;cp&quot; &quot;-R&quot; &quot;collector/benchmarks/script-servo/.&quot; &quot;/tmp/.tmpIFlllh&quot;
[2019-02-20T04:52:59Z TRACE collector::execute] running: &quot;cargo&quot; &quot;pkgid&quot; &quot;--manifest-path&quot; &quot;components/script/Cargo.toml&quot;
[2019-02-20T04:52:59Z DEBUG collector::execute] &quot;cargo&quot; &quot;rustc&quot; &quot;--manifest-path&quot; &quot;components/script/Cargo.toml&quot; &quot;-p&quot; &quot;file:///tmp/.tmpIFlllh/components/script#0.0.1&quot; &quot;--profile&quot; &quot;check&quot; &quot;--no-default-features&quot; &quot;--&quot;
[2019-02-20T04:52:59Z TRACE collector::execute] running: &quot;bash&quot; &quot;-c&quot; &quot;find . -name \&#39;*.rs\&#39; | xargs touch&quot;
[2019-02-20T04:52:59Z TRACE collector::execute] running: &quot;cargo&quot; &quot;rustc&quot; &quot;--manifest-path&quot; &quot;components/script/Cargo.toml&quot; &quot;-p&quot; &quot;file:///tmp/.tmpIFlllh/components/script#0.0.1&quot; &quot;--profile&quot; &quot;check&quot; &quot;--no-default-features&quot; &quot;--&quot;
[2019-02-20T04:53:00Z INFO  collector] failed to benchmark script-servo, recorded: expected success, got exit code: 101

stderr=error: An unknown error occurred

To learn more, run the command again with --verbose.
</pre></div>



<a name="158946359"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946359" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946359">(Feb 20 2019 at 04:56)</a>:</h4>
<p>Yep, looks like a compiler bug. I suppose maybe standard <code>RUST_LOG=polonius-...</code> might work? No idea what, if anything, polonius uses for logging.</p>



<a name="158946361"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946361" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946361">(Feb 20 2019 at 04:57)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> might know more.</p>



<a name="158946383"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946383" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946383">(Feb 20 2019 at 04:57)</a>:</h4>
<p>hmm</p>



<a name="158946384"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946384" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946384">(Feb 20 2019 at 04:57)</a>:</h4>
<p>Anyway, I need to run -- I suspect you might be able to filter it down to some smaller set of benchmarks (--help should help there for specific arguments to pass)</p>



<a name="158946388"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946388" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946388">(Feb 20 2019 at 04:57)</a>:</h4>
<p>but I was trying to use just nightly</p>



<a name="158946430"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946430" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946430">(Feb 20 2019 at 04:58)</a>:</h4>
<p>I think nightly is potentially similarly broken?</p>



<a name="158946434"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946434" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946434">(Feb 20 2019 at 04:58)</a>:</h4>
<p>without polonius</p>



<a name="158946435"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946435" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946435">(Feb 20 2019 at 04:58)</a>:</h4>
<p>just as is</p>



<a name="158946436"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946436" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946436">(Feb 20 2019 at 04:58)</a>:</h4>
<p>Oh.</p>



<a name="158946437"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946437" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946437">(Feb 20 2019 at 04:58)</a>:</h4>
<p>Well.</p>



<a name="158946441"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946441" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946441">(Feb 20 2019 at 04:58)</a>:</h4>
<p>....So this is not with -Zpolonius?</p>



<a name="158946444"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946444" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946444">(Feb 20 2019 at 04:58)</a>:</h4>
<p>it is</p>



<a name="158946448"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946448" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946448">(Feb 20 2019 at 04:58)</a>:</h4>
<p>but did without it and ... let me check again :)</p>



<a name="158946460"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946460" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946460">(Feb 20 2019 at 04:59)</a>:</h4>
<p>anyway, I'll try and check in tomorrow morning as well but I <em>suspect</em> this is a polonius bug</p>



<a name="158946463"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946463" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946463">(Feb 20 2019 at 04:59)</a>:</h4>
<p>Perf's CI and server certainly don't see this bug.</p>



<a name="158946524"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946524" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946524">(Feb 20 2019 at 05:00)</a>:</h4>
<p>seeing the same using nightly and rustc-perf as is</p>



<a name="158946560"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946560" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946560">(Feb 20 2019 at 05:01)</a>:</h4>
<p>running this ...</p>



<a name="158946561"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946561" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946561">(Feb 20 2019 at 05:01)</a>:</h4>
<p>RUST_LOG=collector=trace ./target/release/collector --output-repo output bench_local test --rustc <code>which rustc</code> --cargo `which cargo</p>



<a name="158946963"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158946963" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158946963">(Feb 20 2019 at 05:11)</a>:</h4>
<p>ok, it seems like is an error in the command I'm running</p>



<a name="158948865"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158948865" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158948865">(Feb 20 2019 at 06:00)</a>:</h4>
<p>(<del>perf.rlo can’t compile script-servo right now, since the Universes PR/fixes I think, so at least ignore that one</del> update: retracted, it does compile right now, but I swear this was not the case 2 days ago, and I think there’s a comment by Simon which might be related — in any case if it’s just this one we can ignore it for now, if they all fail then yeah that’s different :)</p>



<a name="158965146"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158965146" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158965146">(Feb 20 2019 at 10:50)</a>:</h4>
<p>certainly plausible that polonius mode is broken, but that doesn't seem to be the problem..?</p>



<a name="158969063"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158969063" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158969063">(Feb 20 2019 at 12:10)</a>:</h4>
<p><a href="/user_uploads/4715/BqlqFRCtxpoP3fvzjeZWN3JK/pasted_image.png" target="_blank" title="pasted_image.png">pasted image</a></p>
<div class="message_inline_image"><a href="/user_uploads/4715/BqlqFRCtxpoP3fvzjeZWN3JK/pasted_image.png" target="_blank" title="pasted image"><img src="/user_uploads/4715/BqlqFRCtxpoP3fvzjeZWN3JK/pasted_image.png"></a></div>



<a name="158969075"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158969075" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158969075">(Feb 20 2019 at 12:11)</a>:</h4>
<p>this is current nll-check benchs on my machine</p>



<a name="158969083"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158969083" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158969083">(Feb 20 2019 at 12:11)</a>:</h4>
<p><a href="/user_uploads/4715/uDjd2JwBfM8zng8SFoqWCTYN/pasted_image.png" target="_blank" title="pasted_image.png">pasted image</a></p>
<div class="message_inline_image"><a href="/user_uploads/4715/uDjd2JwBfM8zng8SFoqWCTYN/pasted_image.png" target="_blank" title="pasted image"><img src="/user_uploads/4715/uDjd2JwBfM8zng8SFoqWCTYN/pasted_image.png"></a></div>



<a name="158969090"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158969090" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158969090">(Feb 20 2019 at 12:11)</a>:</h4>
<p>this is polonius benchs</p>



<a name="158969093"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158969093" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158969093">(Feb 20 2019 at 12:11)</a>:</h4>
<p>tuple-stress :S</p>



<a name="158969137"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158969137" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158969137">(Feb 20 2019 at 12:12)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> I'm not sure if this is more or less what you imagined, worser or better :P</p>



<a name="158977614"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158977614" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158977614">(Feb 20 2019 at 14:11)</a>:</h4>
<p>Looks actually pretty similar to NLL pre-optimization, so in some ways this is good IMO</p>



<a name="158979957"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158979957" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158979957">(Feb 20 2019 at 14:36)</a>:</h4>
<p>and IIUC these are showing the worst case behavior: since they actually compile without errors, these benchmarks would succeed the LocationInsensitive pre-pass and not run the costly-for-now full analysis</p>



<a name="158980179"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158980179" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158980179">(Feb 20 2019 at 14:38)</a>:</h4>
<p>Isn't that the best case?</p>



<a name="158980259"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158980259" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158980259">(Feb 20 2019 at 14:39)</a>:</h4>
<blockquote>
<p>Looks actually pretty similar to NLL pre-optimization, so in some ways this is good IMO</p>
</blockquote>
<p>Well, one of the NLL optimisations is currently disabled with Polonius because it broke it.</p>



<a name="158980641"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158980641" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158980641">(Feb 20 2019 at 14:43)</a>:</h4>
<p>Specifically this: <a href="https://github.com/rust-lang/rust/pull/54468/files#diff-bc11632f2a43bd654fa90b6e1e4cb94f" target="_blank" title="https://github.com/rust-lang/rust/pull/54468/files#diff-bc11632f2a43bd654fa90b6e1e4cb94f">https://github.com/rust-lang/rust/pull/54468/files#diff-bc11632f2a43bd654fa90b6e1e4cb94f</a></p>



<a name="158980860"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158980860" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158980860">(Feb 20 2019 at 14:45)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> how so ? when the quick location-insensitive analysis is enough, running the costly one is worse :) (maybe you're talking about the additional overhead when there are indeed errors ?)</p>



<a name="158996367"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158996367" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158996367">(Feb 20 2019 at 17:45)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> These benchmarks are illustrating the best case: they are <em>not</em> running the costly full analysis since they succeed, right?</p>



<a name="158996718"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158996718" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158996718">(Feb 20 2019 at 17:49)</a>:</h4>
<p>my guess would be that they are indeed running the costly analysis (even if they don't need to, as the benchmarks build without errors), because it's the default Polonius variant (and I don't think Santiago overrode it): it's not yet packaged up in a single variant where the location-insensitive success would avoid running this DatafrogOpt full analysis (but we'll get there :)</p>



<a name="158997003"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158997003" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158997003">(Feb 20 2019 at 17:53)</a>:</h4>
<p>yeah, I did not modify the thing at all :)</p>



<a name="158997026"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158997026" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158997026">(Feb 20 2019 at 17:53)</a>:</h4>
<p>rerunning the benchmarks with the environment variable POLONIUS_ALGORITHM=LocationInsensitive (IIRC) would clear that up (and eg focus on the overhead of the inactive NLL optimisation Matthew mentioned, + fact generation, etc)</p>



<a name="158997147"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158997147" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158997147">(Feb 20 2019 at 17:54)</a>:</h4>
<p>ahh right, running it ...</p>



<a name="158997275"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158997275" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158997275">(Feb 20 2019 at 17:56)</a>:</h4>
<p><span class="user-mention" data-user-id="116266">@Santiago Pastorino</span>  it'd just be an additional datapoint, the overhead of DataFrogOpt you benchmarked is very interesting/important to know as well (and thanks for doing it)</p>



<a name="158997302"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158997302" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158997302">(Feb 20 2019 at 17:56)</a>:</h4>
<p>yeah, exactly</p>



<a name="158997303"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/158997303" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#158997303">(Feb 20 2019 at 17:56)</a>:</h4>
<p>we need both things</p>



<a name="159005079"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159005079" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159005079">(Feb 20 2019 at 19:20)</a>:</h4>
<p>POLONIUS_ALGORITHM=LocationInsensitive RUST_LOG=info ./target/release/collector --output-repo output3 bench_local test3 --rustc /home/santiago/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/rustc --cargo <code>which cargo</code></p>



<a name="159005168"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159005168" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159005168">(Feb 20 2019 at 19:21)</a>:</h4>
<p><a href="/user_uploads/4715/V2zhtKt41lNKyD5CyW4Yzeb8/pasted_image.png" target="_blank" title="pasted_image.png">pasted image</a></p>
<div class="message_inline_image"><a href="/user_uploads/4715/V2zhtKt41lNKyD5CyW4Yzeb8/pasted_image.png" target="_blank" title="pasted image"><img src="/user_uploads/4715/V2zhtKt41lNKyD5CyW4Yzeb8/pasted_image.png"></a></div>



<a name="159005217"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159005217" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159005217">(Feb 20 2019 at 19:21)</a>:</h4>
<p>hmmm, I guess that's not passing the env variable to the rustc process</p>



<a name="159008037"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159008037" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159008037">(Feb 20 2019 at 19:48)</a>:</h4>
<p><span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> yeah, I think we have an env_clear somewhere in the code</p>



<a name="159008067"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159008067" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159008067">(Feb 20 2019 at 19:49)</a>:</h4>
<p>You'll probably want to remove that or pass through the polonius variable(s)</p>



<a name="159008825"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159008825" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159008825">(Feb 20 2019 at 19:57)</a>:</h4>
<div class="codehilite"><pre><span></span>diff --git a/collector/src/bin/rustc-perf-collector/execute.rs b/collector/src/bin/rustc-perf-collector/execute.rs
index 1f6a0cd..28b9de9 100644
--- a/collector/src/bin/rustc-perf-collector/execute.rs
+++ b/collector/src/bin/rustc-perf-collector/execute.rs
@@ -182,6 +182,7 @@ impl&lt;&#39;a&gt; CargoProcess&lt;&#39;a&gt; {
             // Not all cargo invocations (e.g. `cargo clean`) need all of these
             // env vars set, but it doesn&#39;t hurt to have them.
             .env_clear()
+            .env(&quot;POLONIUS_ALGORITHM&quot;, &quot;LocationInsensitive&quot;)
             // SHELL is needed for some benchmarks&#39; build scripts.
             .env(&quot;SHELL&quot;, env::var_os(&quot;SHELL&quot;).unwrap_or_default())
             // PATH is needed to find things like linkers used by rustc/Cargo.
@@ -229,6 +230,7 @@ impl&lt;&#39;a&gt; CargoProcess&lt;&#39;a&gt; {
             if self.nll {
                 cmd.arg(&quot;-Zborrowck=mir&quot;);
                 cmd.arg(&quot;-Ztwo-phase-borrows&quot;);
+                cmd.arg(&quot;-Zpolonius&quot;);
             }
             // --wrap-rustc-with is not a valid rustc flag. But rustc-fake
             // recognizes it, strips it (and its argument) out, and uses it as an
</pre></div>



<a name="159008836"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159008836" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159008836">(Feb 20 2019 at 19:57)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> trying with this ^^^</p>



<a name="159009252"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159009252" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159009252">(Feb 20 2019 at 20:01)</a>:</h4>
<p>seems reasonable</p>



<a name="159015362"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159015362" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159015362">(Feb 20 2019 at 21:12)</a>:</h4>
<p><a href="/user_uploads/4715/o-NxMwXlDOJ51g680HKip-vd/pasted_image.png" target="_blank" title="pasted_image.png">pasted image</a></p>
<div class="message_inline_image"><a href="/user_uploads/4715/o-NxMwXlDOJ51g680HKip-vd/pasted_image.png" target="_blank" title="pasted image"><img src="/user_uploads/4715/o-NxMwXlDOJ51g680HKip-vd/pasted_image.png"></a></div>



<a name="159015373"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159015373" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159015373">(Feb 20 2019 at 21:12)</a>:</h4>
<p>this is location insensitive if the trick worked correctly</p>



<a name="159015421"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159015421" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159015421">(Feb 20 2019 at 21:13)</a>:</h4>
<p>it seems like it did</p>



<a name="159015499"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159015499" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159015499">(Feb 20 2019 at 21:14)</a>:</h4>
<p>html5ever and ucd are faster</p>



<a name="159015554"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159015554" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159015554">(Feb 20 2019 at 21:15)</a>:</h4>
<p>there are a lot that gave errors</p>



<a name="159016116"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159016116" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159016116">(Feb 20 2019 at 21:22)</a>:</h4>
<p>errors huh, that's interesting</p>



<a name="159016266"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159016266" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159016266">(Feb 20 2019 at 21:24)</a>:</h4>
<p>Location insensitive is more location-insensitive than the current NLL and in some ways, more location insensitive than the AST borrowck.</p>



<a name="159016570"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159016570" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159016570">(Feb 20 2019 at 21:28)</a>:</h4>
<p>that's an important thing to remember</p>



<a name="159080505"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159080505" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159080505">(Feb 21 2019 at 16:12)</a>:</h4>
<p><span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> awesome, thanks! those runs look kind of like what I expected to be honest</p>



<a name="159080556"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159080556" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159080556">(Feb 21 2019 at 16:13)</a>:</h4>
<p><span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> are you able to get memory usage statistics?</p>



<a name="159080583"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159080583" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159080583">(Feb 21 2019 at 16:13)</a>:</h4>
<p>I have been expecting that there will be a few benchmarks (perhaps tuple-stress?) where we are building up gigantic vectors</p>



<a name="159080934"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159080934" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159080934">(Feb 21 2019 at 16:17)</a>:</h4>
<p>yes</p>



<a name="159080937"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159080937" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159080937">(Feb 21 2019 at 16:17)</a>:</h4>
<p>I can do that</p>



<a name="159081011"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159081011" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159081011">(Feb 21 2019 at 16:18)</a>:</h4>
<p>I guess we want that for AST, NLL and Polonius NLL, right?</p>



<a name="159081025"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159081025" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159081025">(Feb 21 2019 at 16:18)</a>:</h4>
<p>or do we already have AST and NLL ones somewhere?</p>



<a name="159081115"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159081115" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159081115">(Feb 21 2019 at 16:19)</a>:</h4>
<p>weren't they recorded when you did the runs ?</p>



<a name="159081296"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159081296" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159081296">(Feb 21 2019 at 16:21)</a>:</h4>
<p>that is, is there a combobox like <a href="/user_uploads/4715/g-tZxwA311hHtBAtYxbRDFT1/pasted_image.png" target="_blank" title="pasted_image.png">this</a> down somewhere ? if so, switching it to max-rss would give you the memory comparison</p>
<div class="message_inline_image"><a href="/user_uploads/4715/g-tZxwA311hHtBAtYxbRDFT1/pasted_image.png" target="_blank" title="this"><img src="/user_uploads/4715/g-tZxwA311hHtBAtYxbRDFT1/pasted_image.png"></a></div>



<a name="159081483"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159081483" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159081483">(Feb 21 2019 at 16:23)</a>:</h4>
<p>hmm, let me see</p>



<a name="159081490"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159081490" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159081490">(Feb 21 2019 at 16:23)</a>:</h4>
<p>I thought that was with a different flag</p>



<a name="159082813"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159082813" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159082813">(Feb 21 2019 at 16:36)</a>:</h4>
<p><a href="/user_uploads/4715/kZyXJJ4SIuAh7EDEBshappIa/pasted_image.png" target="_blank" title="pasted_image.png">pasted image</a></p>
<div class="message_inline_image"><a href="/user_uploads/4715/kZyXJJ4SIuAh7EDEBshappIa/pasted_image.png" target="_blank" title="pasted image"><img src="/user_uploads/4715/kZyXJJ4SIuAh7EDEBshappIa/pasted_image.png"></a></div>



<a name="159082829"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159082829" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159082829">(Feb 21 2019 at 16:37)</a>:</h4>
<p>current nll</p>



<a name="159082869"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159082869" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159082869">(Feb 21 2019 at 16:37)</a>:</h4>
<p><a href="/user_uploads/4715/YMgaKKBSSaJqVArGH-wp3jhM/pasted_image.png" target="_blank" title="pasted_image.png">pasted image</a></p>
<div class="message_inline_image"><a href="/user_uploads/4715/YMgaKKBSSaJqVArGH-wp3jhM/pasted_image.png" target="_blank" title="pasted image"><img src="/user_uploads/4715/YMgaKKBSSaJqVArGH-wp3jhM/pasted_image.png"></a></div>



<a name="159082876"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159082876" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159082876">(Feb 21 2019 at 16:37)</a>:</h4>
<p>polonius</p>



<a name="159082906"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159082906" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159082906">(Feb 21 2019 at 16:38)</a>:</h4>
<p>html5ever is insanely worser</p>



<a name="159082963"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159082963" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159082963">(Feb 21 2019 at 16:38)</a>:</h4>
<p>ucd</p>



<a name="159082973"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159082973" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159082973">(Feb 21 2019 at 16:38)</a>:</h4>
<p>etc</p>



<a name="159082977"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159082977" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159082977">(Feb 21 2019 at 16:38)</a>:</h4>
<p>and</p>



<a name="159083047"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159083047" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159083047">(Feb 21 2019 at 16:39)</a>:</h4>
<p><a href="/user_uploads/4715/pwtGSBtCuf9f7qJWnOo_qNFy/pasted_image.png" target="_blank" title="pasted_image.png">pasted image</a></p>
<div class="message_inline_image"><a href="/user_uploads/4715/pwtGSBtCuf9f7qJWnOo_qNFy/pasted_image.png" target="_blank" title="pasted image"><img src="/user_uploads/4715/pwtGSBtCuf9f7qJWnOo_qNFy/pasted_image.png"></a></div>



<a name="159083057"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159083057" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159083057">(Feb 21 2019 at 16:39)</a>:</h4>
<p>polonius location insensitive</p>



<a name="159083111"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159083111" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159083111">(Feb 21 2019 at 16:39)</a>:</h4>
<p>talking about max-rss</p>



<a name="159083113"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159083113" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159083113">(Feb 21 2019 at 16:39)</a>:</h4>
<p>just in case :)</p>



<a name="159083346"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159083346" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159083346">(Feb 21 2019 at 16:42)</a>:</h4>
<p><span aria-label="joy" class="emoji emoji-1f602" role="img" title="joy">:joy:</span></p>



<a name="159148550"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159148550" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159148550">(Feb 22 2019 at 11:15)</a>:</h4>
<p><span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> ok that was roughly what I expected =)</p>



<a name="159148605"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159148605" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159148605">(Feb 22 2019 at 11:16)</a>:</h4>
<p>IIRC, those are places where we put in special place checks for the old NLL</p>



<a name="159148612"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159148612" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159148612">(Feb 22 2019 at 11:16)</a>:</h4>
<p>it's <em>probably</em> not worth worrying about that <em>just now</em>, but it will be something we have to think about how to tackle at some point</p>



<a name="159184812"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/finding%20perf%20spikes/near/159184812" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/finding.20perf.20spikes.html#159184812">(Feb 22 2019 at 19:37)</a>:</h4>
<p><span aria-label="+1" class="emoji emoji-1f44d" role="img" title="+1">:+1:</span></p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>